Update your config to look like:
<configuration>
<system.web>
<compilation debug="true" targetframework="4.0">
<authentication mode="None">
</authentication></compilation></system.web>
<system.webserver>
<modules runallmanagedmodulesforallrequests="true">
</modules></system.webserver>
<system.servicemodel>
<servicehostingenvironment **aspnetcompatibilityenabled**="true">
<standardendpoints>
<webscriptendpoint>
<standardendpoint **crossdomainscriptaccessenabled**="true" name="">
</standardendpoint></webscriptendpoint>
</standardendpoints>
</servicehostingenvironment></system.servicemodel>
</configuration>
See here for a blog post providing a walkthrough of creating a wcf service that's accessible cross-domain.
This will enable your service to accept requests from cross-domain sources.
In terms of determining whether to pad your response (the p in jsonp),
Thanks to @carlosfigueira for this:
If using .Net 4 JSONP is supported natively. As long as the request has a query string parameter called "callback" (this name can be configured), the response will be padded with the function name
.
Otherwise, you'll need to write a custom message inspector that pads the response appropriately.